In recent years, consumer electronics devices that access, store and play various kinds of content (e.g., music, video, etc.) have become increasingly popular. Such devices include, iPods that download and store music and video, network-enabled storage drives that store data, music, and video, satellite radios, and digital video recorders (DVRs) that store a variety of entertainment programming. At the same time, wireless networks have also become common in many households. Many content sources such as iPods, storage drives, satellite radios, and DVRs are designed to share the content they receive and/or store with other media devices via a home network. However, one problem in accessing the content from these sources is that some conventional media players such as TVs and audio systems typically lack networking capability. Therefore, these players cannot take advantage of a home network to access rich media available from other content sources and render such media. Some media players (e.g., Sony/Google TV) may be network enabled, but the addition of a specialized processor, a keyboard, and other hardware significantly increases the cost of such a player.
Another challenge when using multiple content sources and players relates to how to efficiently control them. Many devices such as DVRs, digital radios, audio-systems, and TVs can be controlled using a remote controller, typically provided with the device. It is cumbersome and impractical, however to carry around a number of remote controllers, one for controlling each of the content source and playback devices. Universal remote controllers, i.e., controllers that can be programmed to control more than one device, can alleviate this problem to some extent, but such controllers typically employ infra-red technology, and hence, their use is limited to situations in which the universal controller and the device to be controlled are within the line-of-sight of each other.
One approach to circumventing the line-of-sight problem is to use mobile computing devices such as smart phones (e.g., iPhones, Android-based phones), mobile PDAs (e.g., BlackBerrys), and tablet PCs to control various media devices (i.e., media players and sources) via a home network. In some instances, a user interface (UI) of a mobile computing device mimics a conventional remote controller. In other instances, the remote controller functionality on the media device is controlled by the mobile device taking advantage of the powerful UIs that may be supported thereon. In this, when remote controller functionality is launched on the mobile computing device, the media device (i.e., media player or source) provides a remote user interface to the mobile computing device, which is presented to a user via the display and/or UI of the mobile device. To this end, the device to be controlled typically obtains information about the mobile device (e.g., the device's display type and dimensions, communication protocol, etc.) and creates a suitable user interface (UI). A user then controls the media device by using the corresponding UI on the mobile device. All the actions initiated by the user are passed on to the media device, thereby causing a change in state of the media player (e.g., a change in volume, skipping to the next song, etc.). Furthermore, the media device may also determine the next UI to be presented to the user (as described in detail below). Generally, the mobile device communicates with the media device via a wireless home network, without requiring a line of sight between the mobile device and the media device.
This approach also faces many challenges, however. First, the media device must have the ability to wirelessly communicate with another device such as a mobile computing device. Second, the media device must be able to provide a suitable user interface on a mobile device. Third, even if a media device can configure known mobile computing devices, such devices are frequently modified and improved (e.g., their data-communication protocols, data formats, etc. are changed), and new devices become available. A media player designed to configure the known mobile devices may not be able to configure or interoperate with new and/or improved devices. Recall, also, that this solution only enables controlling a media device in a limited way, and does not allow rich media from various media sources to be accessed on a media player. Therefore, there is a need for improved systems and methods of operating various media sources and players.